package com.JavaNet.chapter8_client_socket.half_quplex;


import java.io.*;
import java.net.Socket;

/**
 * @author : wushikai
 * <p>
 * date : 2021-04-20
 */
@Deprecated
public class MyClient2 {

    public static void main(String[] args) {
        MyClient2 mc2= new MyClient2();
    }

    public MyClient2(){
        try {
            //创建客户端连接通道对象 第一个参数表示连接服务器的ip 第2个参数表示连接哪个端口
            Socket socket= new Socket("127.0.0.1",9999);

            //向服务器发送数据  创建写对象 向通道对象的输出流写入数据 true代表及时刷新数据
            PrintWriter pw= new PrintWriter(socket.getOutputStream(),true);
            BufferedWriter bf = new BufferedWriter(  pw);
            //创建一个输入流  接收从控制台输入的数据
            InputStreamReader isr= new InputStreamReader(System.in);
            BufferedReader bufferedReader= new BufferedReader(isr);

            InputStreamReader isr2= new InputStreamReader(socket.getInputStream());
            BufferedReader br2= new BufferedReader(isr2);

            while(true){
                System.out.println("请输入你想对服务器说的话");
                //客户端先从控制台接收
                String msg= bufferedReader.readLine();
                //然后发送给服务器
                pw.print(msg);

                bf.write(msg);
                bf.flush();
                //退出对话
                if(msg.equals("bye")){
                    System.out.println("对话结束！");
                    socket.close();
                    break;
                }
                //接受从服务器发送的话
                String info= br2.readLine();

                System.out.print("服务器说："+ info);
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
